$j=jQuery.noConflict();
$j(document).ready(function()
{	$j("a").click(function()
	{		return confirm('уйти не сохранив изменений?');	});
	show();
	loadPicture();
	cityCheckBox();
});
function cityCheckBox()
{	$j("#showCities").click(function()
	{		$j("#cities").slideToggle(300);
	});
	$j(".cityCheckBox").change(function(event)
	{		$j(".allCities").prop('checked', true);		$j(".cityCheckBox").each(function(event)
		{
			if(!$j(this).prop("checked"))
				$j(".allCities").prop('checked', false);

		});
	});
	$j(".allCities").change(function()
	{		if(!$j(".allCities").prop('checked'))
		{			$j(".cityCheckBox").removeAttr("checked");			$j("#cities").slideDown(300);		}
		else
		{
			$j(".cityCheckBox").attr("checked", "checked");
			$j(".cityCheckBox").prop("checked", true);
			//$j("#cities").slideUp(300);
		}	});}
function show()
{
	var el;
	$j(".but").click(function(event)
	{
		var div=$j(this).parent();
		el=$j(this).parent().attr("id");
		//alert(el);
		var value=$j(this).parent().attr("value");
		var html=$j(div).html();
		//alert(el);
		var ucEl=el.charAt(0).toUpperCase()+el.substr(1);
		var input='\
		<input name="'+el+'" id="'+el+'Input" type="text" value="'+value+'" />\
		<div class="check'+ucEl+'Res" style="display: inline;">\
	   	 		<img src="main_pics/ok.jpg" width="15" height="15">\
	   	 </div><br />\
		<input name="cancel" class="cancel" type="button" value="Отменить">';
		if(el=='text_title' || el=='phone' || el=='link')
		{
			input='\
			<input name="'+el+'" id="'+el+'Input" type="text" value="'+value+'" />\
			<div class="check'+ucEl+'Res" style="display: inline;">\
	   	 	</div><br />\
			<input name="cancel" class="cancel" type="button" value="Отменить">';
		}
		if(el=='text')
		{
			var input='\
			<textarea id="textInput" name="stext" cols="60" rows="12">'+value+'</textarea>\
			<input name="cancel" class="cancel" type="button" value="Отменить">';

		}
		$j("#"+el).fadeOut(200, function()
		{
			//alert(el);
			$j("#"+el).html(input);
			$j("#"+el).fadeIn(200);
			email();
			$j(".cancel").click(function(event)
	        {
	        	var el=$j(this).parent().attr("id");
	        	var value=$j(this).parent().attr("value");
	        	var html=value+'<br /><but class="but">изменить</but>';
		        $j("#"+el).fadeOut(200, function()
				{
					$j("#"+el).html(html);
					$j("#"+el).fadeIn(200, show());
				});
	        });
		});
	});
}
function loadPicture()
{	$j(".loadButton").unbind('click');	$j(".loadButton").click(function(event)
	{
		var imgName=$j(this).attr("imgName");
		var btnUpload=jQuery('#upload');
		var status=jQuery('#status');
		new AjaxUpload(btnUpload,
		{
			action: 'actions/loadAvatar.php',
			name: 'pictures/temp/'+imgName,
			onSubmit: function(file, ext)
			{
				//$j("#preview").html('');
				if (! (ext && /^(jpg|png|jpeg|gif)$/.test(ext)))
				{
					status.text('Поддерживаемые форматы JPG, PNG или GIF');
					return false;
				}
				//status.text('Загрузка...');
			},
			onComplete: function(file, response)
			{
				status.text('');
				if(response)
				{
					jQuery('#preview').appendTo('#avatar').html(response);
                    var newLoad='<span id="span" class="loadButton" imgName="temp'+Math.round(Math.random(0)*1000)+'">Изменить</span>';
                    $j("#upload").html(newLoad);
				}
				else
				{
					jQuery('#preview').style.display='block';
					jQuery('#preview').appendTo('#avatar').text(file).addClass('error');
				}
				loadPicture();
			}
		});
	});}
function keyupInput(input, rusName, max, min, regExp, regExpText)
{
	var valid=true;
	var regExp=new RegExp(regExp);
	var val=$j(input).val();
	if(!regExp.test(val) && val!='')
	{
		var newValue=val.substring(0, val.length - 1);
		$j(input).val(newValue);
		alert('недопустимый символ!('+regExpText+')');
		valid=false;
		return valid;
	}
	if(val.length>max)
	{
		var newValue=val.substring(0, max);
		$j(input).val(newValue);
		alert(rusName+' не может быть длиннее '+max+' символов!');
		valid=false;
		return valid;
	}
	if(val.length<min)
	{
		valid=false;
		return valid;
	}
	return valid;
}
function submitCheck(input, rusName, max, min, regExp, regExpText)
{
	var regExp=new RegExp(regExp);
	submit=true;
	if($j(input).val()=='' && min>0)
	{
		alert('Вы не ввели '+rusName+'!');
		submit=false;
		return submit;
	}
	if(!regExp.test($j(input).val()))
	{
		alert('Недопустимое '+rusName+'! ('+regExpText+')');
		submit=false;
		return submit;
	}
	if($j(input).val().length<min)
	{
		alert(''+rusName+' может быть не менее '+min+' символов!');
		submit=false;
		return submit;
	}
	if($j(input).val().length>max)
	{
		alert(''+rusName+' может быть не длиннее '+max+' символов!');
		submit=false;
		return submit;
	}
	return submit;
}
function email()
{
	$j("#nameInput").keyup(function()
	{
		if(keyupInput($j("#nameInput"), "Название", 40, 1, "^[-a-zA-Zа-яА-ЯёЁ0-9 -!@#*?&$()'.,%]+$", 'Только русские и английские буквы и цифры и -!@#*?&$()\'.,'))
		{
			$j(".checkNameRes").html('<img src="main_pics/ok.jpg" width="15" height="15">');
		}
		else $j(".checkNameRes").html('<img src="main_pics/nok.jpg" width="15" height="15">');
	});
	$j("#shortInput").keyup(function()
	{
		if(keyupInput($j("#shortInput"), "Краткое описание", 40, 2, "^[-a-zA-Zа-яА-ЯёЁ0-9 -@#&()'.,]+$", 'Только русские и английские буквы и цифры и -@#&()\'.,'))
		{
			$j(".checkShortRes").html('<img src="main_pics/ok.jpg" width="15" height="15">');
		}
		else $j(".checkShortRes").html('<img src="main_pics/nok.jpg" width="15" height="15">');
	});
	$j("#linkInput").keyup(function()
	{
		if(keyupInput($j("#linkInput"), "Веб-сайт", 30, 5, "^[-а-яА-Яa-zA-Z0-9\.-_]+$", 'Только буквы и цифры и -_.'))
		{
			$j(".checkLinkRes").html('<img src="main_pics/ok.jpg" width="15" height="15">');
		}
		else if($j("#linkInput").val()=='')
		{
			$j(".checkLinkRes").html('');
		}
		else
		{
			$j(".checkLinkRes").html('<img src="main_pics/nok.jpg" width="15" height="15">');
		}
	});
	$j("#text_titleInput").keyup(function()
	{
		keyupInput($j("#text_titleInput"), "Заголовок текста", 50, 0, "^[-a-zA-Zа-яА-ЯёЁ0-9 -/.,()#@!&%?'\"+]+$", 'Только русские и английские буквы и цифры и -/.,.,()#@!&%?\"\'');
	});
	$j("#textInput").keyup(function()
	{
		keyupInput($j("#textInput"), "Текст", 3000, 0, "(.)", 'Только русские и английские буквы и цифры и -/.,.,()#@!&%?\"\'');
	});
	$j("#editFirms").submit(function()
	{
		var submit=true;
		var checkBox=false;
		$j(".cityCheckBox").each(function(event)
		{
			if($j(this).prop("checked"))
				checkBox=true;
		});
		if(!checkBox)
		{			alert('Выберите минимум один город!');
			return false;		}
		if($j("#divisionInput").val()=="Выберите рубрику")
		{
			alert('Вы не выбрали Рубрику!');
			return false;
		}
		if($j("#subdiv").val()=='Выберите раздел рубрики')
		{
			alert('Вы не выбрали Раздел рубрики!');
			return false;
		}
		if($j("#nameInput"))
		{
			if(!submitCheck($j("#nameInput"), "Название", 40, 1, "^[-a-zA-Zа-яА-ЯёЁ0-9 -!@#*?&$()'.,%]+$", 'Только русские и английские буквы и цифры и -!@#*?&$()\'.,'))
				return false;
		}
		if($j("#shortInput"))
		{
			if(!submitCheck($j("#shortInput"), "Краткое описание", 40, 2, "^[-a-zA-Zа-яА-ЯёЁ0-9 -@#&()'.,]+$", 'Только русские и английские буквы и цифры и -@#&()\'.,'))
				return false;
		}
		if($j("#linkInput"))
		{
		 	if($j("#linkInput").val() && !submitCheck($j("#linkInput"), "Веб-сайт", 30, 5, "^[-а-яА-Я0-9a-zA-Z-_.]+$", 'Только буквы и цифры и -_.'))
        		return false;
        }
        if($j("#text_titleInput"))
        {
        	if(!submitCheck($j("#text_titleInput"), "Заголовок текста", 50, 0, "(.)", ''))
        		return false;
        }
        if($j("#textInput"))
        {
        	if(!submitCheck($j("#textInput"), "Текст", 3000, 0, "(.)", ''))
        		return false;
        }
	});

}

function keyupInput(input, rusName, max, min, regExp, regExpText)
{
	var valid=true;
	var regExp=new RegExp(regExp);
	var val=$j(input).val();
	if(!regExp.test(val) && val!='')
	{
		var newValue=val.substring(0, val.length - 1);
		$j(input).val(newValue);
		alert('недопустимый символ!('+regExpText+')');
		valid=false;
		return valid;
	}
	if(val.length>max)
	{
		var newValue=val.substring(0, max);
		$j(input).val(newValue);
		alert(rusName+' не может быть длиннее '+max+' символов!');
		valid=false;
		return valid;
	}
	if(val.length<min)
	{
		valid=false;
		return valid;
	}
	return valid;
}

